const mongoose = require('mongoose')
const db = require('./config/key').mongoURL3;
mongoose.connect(db)
    .then(() => {
        console.log("数据库连接成功");
    })
    .catch(err => {
        console.log(err);
    })
const users = require('./models/User');
// 引入profiles
const Profile = require('./models/Profile')
    // 引入ArticleCate
    // 创建网站服a务器
const ArticleCate = require('./models/ArticleCate')

const acti = { title: '测试', content: "nodejs是厉害的", author_id: "5e7c4a2bd7d1901ee8dd45ca", cid: "5e92ce114b6e941044f8cf7b" }
const cate = { title: 'Node', descripton: '关于Node东西' }
    // Profile(acti).save().then(res => console.log(res))
    // Profile.findOne({
    //         author_id: "5e6a1aae359b93041cf1c6c9"
    //     }).then(res => console.log(res))
    // users.find().then(res => console.log(res))
    // ArticleCate(cate).save().then(res => console.log(res))
    // ArticleCate.find().then(res => console.log(res))
    // 聚合查询 from 必须是被关联的表名
    // users.find().then(res => console.log(res))
    // users.aggregate([{
    //             $lookup: {
    //                 from: "profiles",
    //                 localField: "_id",
    //                 foreignField: "author_id",
    //                 as: "items"
    //             },
    //         },
    //         {
    //             $match: {
    //                 _id: mongoose.Types.ObjectId("5e7c4a2bd7d1901ee8dd45ca")
    //             }
    //         }
    //     ]).then(res => console.log(JSON.stringify(res)))
    // 分类查询
    // ArticleCate.find().then(res => console.log(res))
    // ArticleCate.aggregate([{
    //         $lookup: {
    //             from: "profiles",
    //             localField: "_id",
    //             foreignField: "cid",
    //             as: "items"
    //         }
    //     }, {
    //         $match: {
    //             _id: mongoose.Types.ObjectId("5e92ce114b6e941044f8cf7b")
    //         }
    //     }

// ]).then(res => {
//     const data = JSON.stringify(res);
//     const items = res[0].items
//     console.log(items);

// })

// 三表关联查询
// Profile.aggregate([{
//         $lookup: {
//             from: "articlecate",
//             localField: "cid",
//             foreignField: "_id",
//             as: "cate"
//         }
//     },
//     {
//         $lookup: {
//             from: "users",
//             localField: "author_id",
//             foreignField: "_id",
//             as: "users"
//         }
//     }
// ]).then(res => console.log(JSON.stringify(res)))